SQL数据库实验二 表与视图的操作

您所在的位置:网站首页 sql server基础操作 SQL数据库实验二 表与视图的操作

SQL数据库实验二 表与视图的操作

2023-09-02 22:22| 来源: 网络整理| 查看: 265

一.实验目的 1.掌握数据库表和视图的基础知识 2.掌握创建,修改,使用,删除表与视图的不同方法 3.创建表与视图的导入与导出方法 二.实验内容与要求 1.创建数据库和表 用你掌握的某种方法,创建订报管理子系统的数据库DngBao,在DingBao数据库中用交互式界面操作方法或创建如下三表的表结构(表名及字段名使用括号中给出的英文名),并完成三表所示内容的输入,根据需要可自行设计输入更多的表记录。 创建表结构时要求满足:①报纸编码表(PAPER)以报纸编号(pno)为主键,如表3-1所示;②顾客编码表以顾客编号为主键,如表3-2所示;③报纸订阅表(CP以报纸编号与顾客编号为主键,订阅份数(num)的缺省值为1,如表3-3所示。

创建一个ACCESS数据库,把在SQL Server 中创建的三表导出到ACCESS数据库中 2.创建和使用视图 ①在数据库中,创建含有顾客编号、顾客名称、报纸编号、报纸名称、订阅份数等 信息的视图,视图名设定为CPN ②修改已创建的视图C_PN,使其含报纸单价信息。 ③通过视图CPN,查询“人民日报”被订阅的情况,能通过视图CPN实现对数据的更 新操作吗?请尝试各种可行的更新操作,如修改某人订阅某报的份数,修改某报的名称等 ④删除视图CPN. 在这里插入图片描述

二、实验结果 实验代码如下

create table paper (pno varchar(10) primary key, pna varchar(10) , ppr float , ); create table customer ( cno varchar(10)primary key, cna varchar(10), adr varchar(20), ); create table cp ( cno varchar(10), pno varchar(10), num int , primary key(pno,cno), ); insert into paper select '000001','人民日报', 12.5 union select '000002','解放军报', 14.5 union select '000003','光明日报', 10.5 union select '000004','青年报', 11.5 union select '000005','扬子晚报', 18.5 ; insert into cp select '10000001','000001', 2 union select '10000001','000002', 4 union select '10000001','000005', 6 union select '10000002','000001', 2 union select '10000002','000003', 2 union select '10000002','000005', 2 union select '10000003','000003', 2 union select '10000003','000004', 4 union select '10000004','000001', 1 union select '10000004','000003', 3 union select '10000004','000005', 2 union select '10000005','000003', 4 union select '10000005','000002', 1 union select '10000005','000004', 3 union select '10000005','000005', 5 union select '10000005','000001', 4 ; insert into customer select '10000001','李涛', '无锡市解放东路123号 ' union '10000002','钱金浩', '无锡市人民西路234号' union select '10000004','朱海红', '无锡市中山东路432号' union select '10000003','邓杰', ' 无锡市惠河路270号'union select '10000005','欧阳阳文', '无锡市中山东路532号' ; create view cpn as select cp.cno,cp.pno,customer.cna,paper.pna,cp.num from cp,customer,paper where cp.pno=paper.pno and customer.cno=cp.cno; select sum(num) from cpn where pna='人民日报'; update cpn set num=19 where cno='10000002'; select num from cpn where cno='10000002';

以下为实验结果截图

在这里插入图片描述 在这里插入图片描述

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

三、实验心得 本次实验可谓是一波三折,先是发现连接不了,后来重新下载还发现cp 表连接查询还是有问题,后来仔细检查发现是cno,pno的位置写反了……自己太不细心了,不知道18版本的是不是也是因为这个原因,以后建立表,插入记录的时候记得一定要按照顺序对上,不要要出大问题,解决了这个问题后面做的还算顺利。不管这个问题卡了多久时间,解决了就是值得的,因为以后这种错误就不会轻易再犯了,也挺值得的。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3